package cn.iocoder.yudao.module.dify.controller.admin.riskreportrecords.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import javax.validation.constraints.*;

@Schema(description = "管理后台 - dify风险管理报告任务记录新增/修改 Request VO")
@Data
public class RiskReportRecordsSaveReqVO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5769")
    private Long id;

    @Schema(description = "用户的文件id", requiredMode = Schema.RequiredMode.REQUIRED, example = "12224")
    @NotEmpty(message = "用户的文件id不能为空")
    private String fileId;

    @Schema(description = "原始文件名", example = "王五")
    private String originalName;

    @Schema(description = "文件后缀")
    private String extension;

    @Schema(description = "文件 mime-type", example = "1")
    private String mimeType;

    @Schema(description = "Dify接口请求ID", example = "17167")
    private String difyRequestId;

    @Schema(description = "Dify生成的文件下载URL", example = "https://www.iocoder.cn")
    private String difyDownloadUrl;

    @Schema(description = "Dify接口返回数据")
    private String difyResponse;

    @Schema(description = "成功后文档的MinIO访问URL", example = "https://www.iocoder.cn")
    private String minioUrl;

    @Schema(description = "处理状态:0-处理中,1-处理成功,2-处理失败,3-待处理", example = "1")
    private Integer processStatus;

    @Schema(description = "重试次数", example = "27871")
    private Integer retryCount;

    @Schema(description = "文档约计数")
    private Long characterCount;

}